<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // var strs = 'wd=烧烤到底哪加强&rsv_spt=1&f=8&rsv_bp=1&rsv_idx=2&ie=utf-8';

        // // 目标是: {wd:'烧烤到底哪加强',rsv_spt:1}
        // //第一步 用& 切割 strs
        // //得到结果 [wd=烧烤到底哪加强,rsv_spt=1,f=8,rsv_bp=1,rsv_idx=2,ie=utf-8];
        // //第二步 对上面的数组挨个遍历  
        // // 拿到的结果: wd=烧烤到底哪加强 ...  ie=utf-8 
        //  第三步  需要 再次用=进行切割
        // //  拿到结果 [wd,烧烤到底哪加强] ... [ie,utf-8]
        // //   0    1                 0    1
        // // {下标0作为键:下标1作为值}
        // var arrs = strs.split('&');
        // var obj = {};
        // for(var v of arrs){
        //     // v wd=烧烤到底哪加强 
        //     var newarr = v.split('=');//[wd,烧烤到底哪加强]
        //     obj[newarr[0]] = newarr[1]
        // }
        // console.log(obj)

        // function str_to_obj(strs) {
        //     var arrs = strs.split('&');
        //     var obj = {};
        //     for (var v of arrs) {
        //         // v wd=烧烤到底哪加强 
        //         var newarr = v.split('=');//[wd,烧烤到底哪加强]
        //         obj[newarr[0]] = newarr[1]
        //     }
        //     return obj
        // }

        var obj = {
            name: '张三',
            age: 18,
            height: '181cm'
        }

        // name=zhangsan&age=18&height=181cm
        //最后的结果是字符串  
        // 遍历对象  然后键值对拼接成字符串 如下所示:
        // name=zhangsan&
        // age=18&
        // height=181cm&
        // 最后拼接
        var str = ''
        for (var k in obj) {
            str += `${k}=${obj[k]}&`
        }
        console.log(str) 
        //name=张三&age=18&height=181cm&
        //0                            -1
        // 最后一个&多余 需要拿掉
        str = str.slice(0, -1);
        // 截取正确的部分 = 拿掉不需要的部分
        console.log(str)

        function obj_to_str(obj) {
            var str = ''; //准备空字符串 
            for (var k in obj) { //遍历对象拿到键和值 
                str += `${k}=${obj[k]}&`; // 键值组装成一个字符串 
                // 键=值&  
                // 然后拼接 
            }                        
            str = str.slice(0, -1);  // 截取想要的部分 左闭右开 
            // 保证截取方向是从左到右 拿到值

            return str;

        }
        
    </script>
</body>

</html>